﻿using NUnit.Framework;

namespace ServiceStack.OrmLite.Tests.Issues
{
    [TestFixtureOrmLite]
    public class SaveAllIssue : OrmLiteProvidersTestBase
    {
        public SaveAllIssue(DialectContext context) : base(context) {}

        class UserRole
        {
            public string Name { get; set; }
        }

        [Test]
        public void Can_use_SaveAll_to_save_one_column_table()
        {
            using (var db = OpenDbConnection())
            {
                db.CreateTableIfNotExists<UserRole>();

                db.SaveAll(new[]
                {
                    new UserRole { Name = "Admin" },
                    new UserRole { Name = "Reader" },
                    new UserRole { Name = "Writer" },
                });

                var rows = db.Select<UserRole>();
                Assert.That(rows.Map(x => x.Name), Is.EquivalentTo(new[]{ "Admin", "Reader", "Writer"}));
            }
        }
    }
}